Systems and methods for advertising television networks, channels, and programs

ABSTRACT

The present invention allows control of the presentation of advertisements that are associated with television networks, channels, and programs, and enables a single broadcasting of each advertisement associated with a network to be made to numerous television systems in parallel. The presentation of advertisements that are associated with television networks, channels, and programs is controlled in the present invention by determining at television viewer equipment whether the television networks, channels, or programs with which the advertisements are associated are unavailable to the television viewer or are undesirable to the television viewer. Once this determination has been made, the television viewer equipment then presents the advertisements, or selects and presents suitable alternative advertisements. A single broadcasting of each network advertisement to all television systems is enabled in the present invention by broadcasting each advertisement with a network identifier to all television systems. At the television systems, the network identifier and channel map or program guide information located in television viewer equipment are then used by an interactive program guide or other application running in the television viewer equipment to determine whether a local affiliate for that network is available and not designated as undesirable by the television viewer. If the local affiliate is available and not designated as undesirable, the advertisement is then presented to the television viewer, otherwise a suitable alternative advertisement is then identified and presented to the television viewer.

CROSS REFERENCE TO RELATED APPLICATION

[0001] This application claims the benefit of United States provisionalpatent application No. 60/085,608, filed May 15, 1998.

BACKGROUND OF THE INVENTION

[0002] This invention relates to television advertising, and, moreparticularly, to techniques for advertising television networks,channels, and programs.

[0003] The practice of advertising television networks, channels, andprograms has become widespread. For example, an advertisement for anetwork or channel may promote the network or channel generally or aparticular line-up of television programs on that network or channel.Similarly, an advertisement for a television program may promote theprogram generally or a particular episode or particular episodes of thatprogram.

[0004] Advertisements for television networks, channels, and programshave been delivered to television viewers in a variety of ways. Forexample, advertisements have been delivered by using standard televisioncommercial time slots in television programs to present theadvertisements to television viewers. The advertisements delivered insuch standard television commercial time slots for television networksand channels have been delivered on both the same and different networksand channels from those being advertised. Similarly, the advertisementsfor television programs delivered in standard television commercial timeslots have been delivered during both the same and different televisionprograms from those being advertised.

[0005] As another example, barker television screens have also been usedto present advertisements to television viewers over channels that areotherwise unused by television systems. The advertisements delivered onsuch barker television screens have been presented in a variety offormats including full motion video (including audio), still images,graphics, and text.

[0006] As yet another example, passive program guides that providetelevision program information to television viewers on dedicatedtelevision channels have been used to present advertisements. Morerecently, interactive television program guides have been developed thatare similarly capable of delivering advertising for various types ofprogramming. The advertisements delivered by such passive andinteractive program guides have been presented in a variety of formatsincluding full motion video (including audio), still images, graphics,and text.

[0007] A problem with television advertising is that in certaincircumstances the advertisement for a network, channel, or program maybe wasted if the network, channel, or program is unavailable to orundesired by a television viewer. For example, an advertisementpresented to a viewer of a news channel for a comedy channel may bewasted if the comedy channel is unavailable to the viewer. As anotherexample, an advertisement for an adult television channel may be wastedwhen presented to a television viewer who has opted to block out theprogramming available on the adult television channel in the viewer'shome.

[0008] As yet another example, an advertisement for a program on anetwork may be wasted if the local affiliate for that network has chosennot to present the advertised program. As still another example, where achannel on a television system is split by the system operator between afirst programming provider during one portion of the day and a secondprogramming provider during another portion of the day, an advertisementfor a program provided by the first programming provider may be wastedif the program is to be aired during the second programming provider'sportion of the day. As a further example, where a channel produced by aprogramming provider is affiliated with a first network during oneportion of the day and a second network during another portion of theday, an advertisement for a program on the first network may be wastedif the program is to be aired during the second network's portion of theday.

[0009] Rather than wasting an advertising opportunity by presenting anadvertisement for a network, channel, or program that is unavailable toor undesired by a television viewer, it may be preferred to present anadvertisement for a network, channel, or program that is available to ordesired by a television viewer, or some other advertisement.

[0010] A problem associated with providing television advertising inprogram guides is that in order to present an advertisement for anetwork or a program to be aired on a network, a separate copy of theadvertisement for each of the affiliates of the network must bebroadcast to the television systems in which the advertisement is to beaired. This repetitive broadcasting must be performed so that eachtelevision system receives a copy of the advertisement that isassociated with the affiliate of the advertised network carried by thetelevision system. Because the size of typical advertisements thatcontain graphics may be on the order of several kilobytes, however,broadcasting a separate copy of the advertisement for each affiliate oflarge networks may be inefficient. For example, for a program guideadvertisement having a size of six kilobytes that is to be advertised inassociation with a network having three hundred affiliates, thebroadcasting of that advertisement alone would require the broadcastingof one thousand, eight hundred kilobytes of data.

[0011] It is therefore an object of the present invention to providesystems and methods for advertising television networks, channels, andprograms that prevent advertisements from being displayed for networks,channels, and programs that are unavailable to television viewers.

[0012] It is also an object of the invention to provide systems andmethods for advertising television networks, channels, and programs thatprevent advertisements from being displayed for networks, channels, andprograms that are undesired by television viewers.

[0013] It is a further object of the invention to provide systems andmethods for advertising television networks, channels, and programs thatprevent advertisements of network programs from being displayed whenthose programs are not aired by the local affiliates of thecorresponding networks.

[0014] It is a yet further object of the invention to provide systemsand methods for advertising television networks, channels, and programsthat prevent advertisements of programs from being displayed when thoseprograms are to be aired during a portion of the day when the programprovider or network associated with the program is not available totelevision viewers.

[0015] It is a still further object of the invention to provide systemsand methods for advertising television networks, channels, and programsthat do not require the repetitive broadcasting, for each affiliate of anetwork, of advertisements for that network, or a program to be aired onthat network, to those television systems carrying the advertisements.

SUMMARY OF THE INVENTION

[0016] These and other objects of the invention are accomplished inaccordance with the principles of the invention by providing systems andmethods that control the presentation of advertisements to televisionviewers based upon the networks, channels, and programs which areavailable to the viewers and based upon whether those networks,channels, and programs are indicated by the viewers to be undesirable.Additionally, in preferred embodiments of these systems and methods,only a single broadcast of each advertisement that is associated with anetwork (or a program on a network) and a network identifier isperformed for all television systems. Once received, the networkidentifier is used to determine whether the advertisement is to bepresented to the viewers of each television system.

[0017] The systems and methods of the present invention preferablycontrol the presentation of advertisements by determining at televisionviewer equipment whether the advertisements are associated withtelevision networks, channels, or programs that may be unavailable tothe television viewer or that may be undesirable to the televisionviewer. Once this determination has been made, the television viewerequipment then preferably presents the advertisements, or selects andpresents suitable alternative advertisements. Advertisements may bepresented using any suitable technique such as by presenting full motionvideo (including audio), still images, graphics, and text, duringstandard television commercial time slots, on barker screens, in passiveor interactive program guide advertisements, or using any other suitableadvertising method.

[0018] The television viewer equipment of the systems and methods of thepresent invention is preferably a television set-top box coupled to atelevision, although videocassette recorders (VCRs), advanced televisionreceivers, personal computer televisions (PC/TVS), and any othersuitable equipment that has sufficient hardware to perform the sameprocessing and display functions provided by a television set-top boxand television may also be used.

[0019] The television viewer equipment preferably receives transmissionsof data such as advertisements and advertisement control information,program guide information, and channel map information from a mainfacility, a television distribution facility, or network nodes within atelevision system. At the television viewer equipment, this data may beused by an interactive television program guide or other suitableapplication, possibly with additional data stored in the televisionviewer equipment (such as channel block-out information), to determinewhether an advertisement is to be presented to the television viewer.

[0020] For example, the program guide or other application may determinethat an advertisement that was intended to be presented on the channel“CNN” for a program to be aired on the channel “WTBS” is not to bepresented if “WTBS” is not available in the television system, eventhough “CNN” is available. In this example, it may be determined thatthe advertisement is associated with “WTBS” from advertisement controlinformation that accompanies the advertisement, or by searching for theprogram being advertised in program guide information stored in thetelevision viewer equipment and retrieving the corresponding channelinformation. The determination that “WTBS” is unavailable to the viewermay be made by consulting channel map information stored in thetelevision viewer equipment or by referring to channel information inprogram guide information stored in the television viewer equipment.Finally, once the determination of whether the advertisement is to bepresented has been made, the advertisement can be presented to thetelevision viewer or a suitable alternative advertisement can beidentified and presented.

[0021] In order to avoid redundantly broadcasting an advertisement thatis associated with a network (or a program to be aired on a network) toeach television system carrying the advertisement for each affiliate ofthat network, the advertisement and a network identifier are preferablybroadcast only once to all television viewer equipment in the televisionsystems. The advertisement and the network identifier are received atthe television viewer equipment. Using the network identifier andchannel map or program guide information located in the televisionviewer equipment, an interactive program guide or other applicationrunning in the television viewer equipment determines whether a localaffiliate for that network is available and has not been designated asundesirable by a television viewer. If the local affiliate is availableand has not been designated as undesirable, the advertisement ispresented to the television viewer. If a local affiliate for thatnetwork is not available or the only local affiliate available for thatnetwork has been designated as undesirable by the television viewer, asuitable alternative advertisement is identified and presented to thetelevision viewer.

[0022] Further features of the invention, its nature and variousadvantages will be more apparent from the accompanying drawings and thefollowing detailed description of the preferred embodiments.

BRIEF DESCRIPTION OF THE DRAWINGS

[0023]FIG. 1 is a diagram of a system in which systems and methods fortargeting of advertising based on network, channel, and programavailability and desirability may be implemented in accordance with oneembodiment of the present invention.

[0024]FIG. 2 is a diagram of a system similar to the system in FIG. 1showing how servers may be located at network nodes in accordance withone embodiment of the present invention.

[0025]FIG. 3 is a flow chart of steps involved in receiving andprocessing an order for an advertisement at an order entry computer inaccordance with one embodiment of the present invention.

[0026]FIG. 4 is a flow chart of steps involved in transmitting programguide information, channel map information, and advertising informationfrom corresponding databases in accordance with one embodiment of thepresent invention.

[0027]FIG. 5 is a flow chart of steps involved in receiving and storingor processing transmissions of program guide information, channel mapinformation, and advertising information in accordance with oneembodiment of the present invention.

[0028]FIG. 6 is a flow chart of steps involved in receiving, processing,and displaying advertising information in accordance with one embodimentof the present invention.

[0029]FIG. 7 is a flow chart of steps involved in determining if atelevision network is viewable by a television audience in accordancewith one embodiment of the present invention.

[0030]FIG. 8 is a flow chart of steps involved in determining if atelevision channel is viewable by a television audience in accordancewith one embodiment of the present invention.

[0031]FIG. 9 is a flow chart of steps involved in determining if atelevision program is viewable by a television audience in accordancewith one embodiment of the present invention.

[0032]FIG. 10 is a chart of a channel map relating channel numbers,source identification numbers, availability flags, blocked-out flags,and start and end times in accordance with one embodiment of the presentinvention.

[0033]FIG. 11 is a chart of a channel map relating source identificationnumbers, network identification numbers, and start and end times inaccordance with one embodiment of the present invention.

[0034]FIG. 12 is a chart of a channel map relating channel numbers,source identification numbers, network identification numbers,availability flags, blocked-out flags, and start and end times inaccordance with one embodiment of the present invention.

[0035]FIG. 13 is a flow chart of steps involved in presenting anadvertisement for a television channel in a standard commercialtelevision time slot in accordance with one embodiment of the presentinvention.

[0036]FIG. 14 is a flow chart of steps involved in presenting a barkerchannel promotion containing only text and graphics for a pay-per-viewprogram in accordance with one embodiment of the present invention.

[0037]FIG. 15 is a flow chart of steps involved in presenting anadvertisement for a television network in an interactive program guidein accordance with one embodiment of the present invention.

[0038]FIG. 16 is a depiction of a “grid” interactive program guidedisplay screen showing an advertisement area for presentingadvertisements in accordance with one embodiment of the presentinvention.

[0039]FIG. 17 is a depiction of a “navigator” interactive program guidedisplay screen showing two advertisement areas for presentingadvertisements in accordance with one embodiment of the presentinvention.

[0040]FIG. 18 is a depiction of a “programs by channels” interactiveprogram guide display screen showing two advertisement areas forpresenting advertisements in accordance with one embodiment of thepresent invention.

[0041]FIG. 19 is a flow chart of steps involved in transmitting,receiving, processing, and displaying an advertisement for a televisionnetwork by making only a single broadcast of the advertisement to alltelevision systems in accordance with one embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0042] An illustrative system 100 for controlling the presentation ofadvertisements associated with television networks, channels, andprograms in accordance with the present invention is shown in FIG. 1.System 100 preferably includes a main facility 102 and a plurality ofcommunications links 108 and television systems 103. Only one suchcommunications link 108 and television system 103 are shown in FIG. 1 toavoid over complicating the drawing. Each television system 103 includesat least one television distribution facility 104, communications path110, and piece of television viewer equipment 106. Generally speaking,main facility 102 provides central data storage and control for some ofthe program guide functions associated with system 100. System 100typically has a very large geographical area. Each communications link108 transmits data between main facility 102 and one or preferably moretelevision distribution facilities 104. Television distributionfacilities 104 may provide local data storage and control for typicallymore localized geographical areas within system 100. Each communicationspath 110 transmits data between a television distribution facility 104and one or more pieces of television viewer equipment 106. And eachpiece of television viewer equipment 106 controls the presentation ofadvertisements (e.g., on a viewer's television).

[0043] Main facility 102 provides central storage and control of programguide data, advertising data, and channel map data in system 100. Inorder to do so, main facility 102 preferably contains, among otherthings, an advertisement order entry computer 111, a program guidedatabase 112, an advertising database 114, and a channel map database116. Advertisement order entry computer 111 preferably enables andcontrols the placing of orders for the presentation of advertisements insystem 100. When an order is placed via computer 111, computer 111 mayaccept advertisement control information identifying which advertisementis to be presented, the network, channel, or program with which theadvertisement is associated, the date, time, and channel on which theadvertisement is to be presented, etc. Once this information has beenentered, computer 111 may package and store the advertisement and theadvertisement control information in advertising database 114 for latertransmission. Computer 111 may also package and store a substituteadvertisement (that may be a generic advertisement having no correlationto the primary advertisement and that may be presented instead of theprimary advertisement) with the advertisement and the advertisementcontrol information. Computer 111 may be implemented using a personalcomputer, a mainframe computer, a network of computers, or any othersuitable computer capable of receiving and processing data, andcommunicating with advertising database 114.

[0044] Program guide database 112 preferably includes television programguide information such as program times, channels, titles, descriptions,pricing information for individual pay programs and subscriptionchannels, time windows for ordering pay programs and channels, telephonenumbers for placing orders for pay programs and channels, etc.Advertising database 114 preferably includes advertisements in formssuch as text, graphics, video, and audio data, advertisement controlinformation such as presentation date, time (including time ranges andcorrection data), and length information, presentation channel andnetwork information, and information such as the names, categories,ratings, descriptions, and series for the networks, channels, andprograms being advertised. Channel map database 116 preferably includeschannel map information relating the channels, networks, and sources ofprogramming that can be received in system 100 and may also indicatewhat channels are available to viewers. For example, the channel mapinformation may indicate that channel number “2” is related to theCentral Broadcasting System (“CBS”) network and is provided by affiliate“WCBS” in New York City. The channel map information may further includeday and time information indicating the days and times at which channelschange source or network associations. Although databases 112, 114, and116 are each illustrated in FIG. 1 as unique databases in main facility102, any or all of databases 112, 114, and 116 could be consolidatedtogether in, or omitted from, main facility 102 or located at separatemain facilities 102.

[0045] Information from databases 112, 114, and 116 may be transmittedto each television distribution facility 104 by way of communicationslink 108. Link 108 may be a satellite link, a telephone network link, acable or fiber optic link, a microwave link, a combination of suchlinks, or any other suitable communications link. The informationtransmitted by way of communications link 108 may be transmitted usingany suitable transmission technique.

[0046] Each television distribution facility 104 is a facility, such asa cable system headend, a broadcast distribution facility, or asatellite television distribution facility, for distributing televisionsignals and data to television viewer equipment 106. As illustrated,each television distribution facility 104 may include, among otherthings, an advertisement order entry computer 117, a program guidedatabase 118, an advertising database 120, and a channel map database122. Advertisement order entry computer 117 may be substantially thesame as advertisement order entry computer 111 in main facility 102.Each of databases 118, 120, and 122 may be substantially the same asdatabases 112, 114, and 116 in main facility 102, may provide localmirrors of the data in those databases and may be omitted fromtelevision distribution facility 104 or located in separate televisiondistribution facilities 104.

[0047] If desired, some or all of the program guide information,advertisements and advertisement control information (including thatreceived from advertising order entry computers 111 and 117), andchannel map information in databases 112, 114, 116, 118, 120, and 122may be provided using data sources at facilities other than mainfacility 102 and television distribution facility 104. For example,program guide information for all or a portion of system 100 may bemaintained by a program guide information provider that is separate frommain facility 102 and television distribution facility 104. Similarly,advertisements and advertisement control information may be generated byan advertising facility that is separate from main facility 102 andtelevision distribution facility 104. Also, the channel map informationin databases 112, 114, 116, 118, 120, and 122 may be generated andmaintained locally at television distribution facility 104.

[0048] Program guide information, advertisements, advertisement controlinformation, and channel map information is distributed from televisiondistribution facility 104 to television viewer equipment 106 by way ofcommunications paths 110. Communications paths 110 may be satellitelinks, telephone network links, cable or fiber optic links, microwave orother free-space links, combinations of such links, or any othersuitable communications paths. Any suitable technique or combination oftechniques may be used to transmit program guide information,advertisements, advertisement control information, and channel mapinformation over communications paths 110 including analog transmission,digital transmission, and mixed analog and digital transmissions.

[0049] Preferably, communications paths 110 have sufficient bandwidth toallow television distribution facility 104 to distribute televisionprogramming such as standard broadcast television, pay programming,advertising and promotional videos, and other video information totelevision viewer equipment 106. Multiple television and audio channels(analog, digital, or both analog and digital) may be provided bycommunications paths 110. Program guide information, advertisements,advertisement control information, and channel map information may betransmitted through communications paths 110 using out-of-band channels,using in-band digital channels, using the vertical blanking interval, orusing any other suitable technique. If desired, program guideinformation, advertisements, advertisement control information, andchannel map information may be distributed by one or more distributionfacilities that are similar to, but separate from, main facility 102 andtelevision distribution facility 104 using communications paths that arethe same or separate from communications paths 110.

[0050] The information stored and transmitted by databases 112, 114,116, 118, 120, and 122 preferably ultimately reaches television viewerequipment 106 where the information is processed and displayed (e.g., byan interactive program guide application or by another suitableapplication) as necessary. As shown, each piece of television viewerequipment 106 may include a set-top box 124, a videocassette recorder126, and a television 128. Television viewer equipment 106 mayadditionally or alternatively include advanced television receivers,personal computer televisions (PC/TVS), and any other suitable equipmentthat has sufficient hardware to perform the same processing and displayfunctions provided by a set-top box and television. Preferably, theinformation from databases 112, 114, 116, 118, 120, and 122 is processedand transformed into a displayable signal by suitable hardware andsoftware incorporated into set-top box 124, although this hardware couldalternatively be incorporated into videocassette recorder 126 ortelevision 128.

[0051] The distribution of data from databases 112, 114, 116, 118, 120,and 122 may be accomplished using one-way transmission from some or allof the databases to television viewer equipment 106. For example, datamay be distributed to television viewer equipment 106 continually orperiodically from some or all of databases 112, 114, 116, 118, 120, and122. The distribution of data may also be accomplished using two-waytransmissions. With this approach, television viewer equipment 106requests the needed data from the databases, and, in response, thecorresponding database transmits back the requested data.

[0052] As shown in FIG. 2, the capabilities of databases 112, 114, 116,118, 120, and 122 may be provided using databases 204, 206, and 208located at network nodes 202 which may be located throughout system 100.Databases such as databases 204, 206, and 208 may be used instead ofsome or all of databases 112, 114, 116, 118, 120, and 122 and may beused in conjunction with some or all of databases 112, 114, 116, 118,120, and 122. By providing databases at network nodes 202 rather than orin addition to databases provided at main facility 102 and televisiondistribution facility 104, it may be possible to focus the datamaintained for a particular area serviced by each network node 202 andit may be possible to more rapidly deliver responses to data requestsfrom television viewer equipment 106 in two-way transmission systems.

[0053] A process 300 for enabling and controlling the placing of ordersfor advertisements that may be implemented on advertising order entrycomputers 111 (FIG. 1) and 117 (FIG. 1) is illustrated in FIG. 3. Atstep 302, process 300 begins by waiting for and receiving advertisementcontrol information from a user. As mentioned above in connection withthe discussion of advertisement order entry computer 111 of FIG. 1, thisinformation may include an indicator of the advertisement to bepresented, the network, channel, or program with which the advertisementis associated, the date, time, and channel on which the advertisement isto be presented, etc. Personnel at main facility 102 or televisiondistribution facility 104 may enter the advertisement controlinformation directly into computers 111 or 117, or the information maybe received by computers 111 or 117 by way of any suitable intermediatecomputer system. During normal operation, advertisements are retrievedfrom one of advertising databases 114, 120, or 206 at step 304 based onthe advertisement control information. The advertisements andadvertisement control information are then packaged in preparation fortransmission to television viewer equipment 106 at step 306. Asubstitute advertisement (that may or may not be correlated to theprimary advertisement) may also be retrieved from one of databases 114,120, or 206 at step 304 and packaged for transmission along with theprimary advertisement and advertisement control information at step 306,if desired. For an advertisement associated with television networks,this packaging in step 306 may include setting a network identificationnumber in the advertisement control information so that televisionsystems 103 receiving the advertisement may determine if an affiliateassociated with the network is carried by each television system 103.Finally, the advertisement and advertisement control information (andsubstitute advertisement, if desired) are placed in an advertisingdatabase 114, 120, or 206 for later transmission to television viewerequipment 106 at step 308. Once step 308 has been performed, process 300loops back to step 302 to wait for and receive more advertisementcontrol information.

[0054]FIG. 4 shows a process 400 for controlling the transmission ofdata to television distribution facilities 104, network nodes 202, andtelevision viewer equipment 106, from databases 112, 114, 116, 118, 120,122, 204, 206, and 208. Process 400 may be implemented by any ofadvertisement order entry computers 111 or 117, by databases 112, 114,116, 118, 120, 122, 204, 206, or 208 (either by individually performinga portion of process 400 or by performing the entire process as asupervisor to the remaining co-located databases), by a transmitting endof communications link 108, by a transmitting end of communicationspaths 110, or by any other suitable equipment capable of controlling thetransmission of data from databases 112, 114, 116, 118, 120, 122, 204,206, and 208.

[0055] At step 402, process 400 begins by determining whether programguide information is ready to be transmitted from any of databases 112,118, or 204. If it is determined at step 402 that television programguide information is ready to be transmitted, process 400 then retrievesand transmits the appropriate television program guide information atstep 404. Once the information has been transmitted at step 404 or if itis determined at step 402 that no television program guide informationis ready to be transmitted, process 400 determines whether channel mapinformation is ready to be transmitted from any of databases 116, 122,or 208. If it is determined at step 406 that channel map information isready to be transmitted, process 400 retrieves and transmits theappropriate channel map information at step 408. Once the informationhas been transmitted at step 408 or if it is determined at step 406 thatno channel map information is ready to be transmitted, process 400determines at step 410 whether advertising information is ready to betransmitted from any of databases 114, 120, or 206. Advertisinginformation may include an advertisement and advertisement controlinformation (and a substitute advertisement, if desired). If it isdetermined at step 410 that advertising information is ready to betransmitted, process 400 then retrieves and transmits the appropriateadvertising information at step 412. Once the information has beentransmitted at step 412 or if it is determined at step 410 that noadvertising information is ready to be transmitted, process 400 loopsback to and repeats step 402. If desired, the steps of FIG. 4 may beperformed concurrently or in a different order.

[0056]FIG. 5 shows a process 500 for controlling the reception of datatransmitted from databases 112, 114, 116, 118, 120, 122, 204, 206, and208 to television distribution facilities 104, network nodes 202, ortelevision viewer equipment 106. Process 500 is preferably implementedby a processor in television viewer equipment 106, but may also beimplemented by a processor in advertisement order entry computer 117, indatabases 118, 120, 122, 204, 206, or 208 (either by individuallyperforming a portion of process 500 or by performing the entire processas a supervisor to the remaining co-located databases), in a receivingend of communications link 108, in a receiving end of communicationspaths 110, or in any other suitable equipment capable of controlling thereception of data from databases 112, 114, 116, 118, 120, 122, 204, 206,and 208 at television distribution facilities 104, network nodes 202,and television viewer equipment 106.

[0057] At step 502, process 500 begins by determining whether programguide information is waiting to be received from any of databases 112,118, or 204. If it is determined at step 502 that program guideinformation is ready to be received, process 500 then receives andstores in memory the program guide information at step 504. When theprogram guide information is received at a television distributionfacility 104 or a network node 202, instead of being stored in memory,the information may be stored in program guide database 118 or 204,respectively. Once the information has been stored at step 504 or if itis determined at step 502 that no program guide information is waitingto be received, process 500 determines at step 506 whether channel mapinformation is waiting to be received from any of databases 116, 122, or208. If it is determined at step 506 that channel map information iswaiting to be received, process 500 then receives and stores in memorythe channel map information at step 508. When the channel mapinformation is received at a television distribution facility 104 or anetwork node 202, instead of being stored in memory, the information maybe stored in channel map database 122 or 208, respectively.

[0058] Once the channel map information has been received at step 508 orif it is determined at step 506 that no channel map information iswaiting to be received, process 500 determines at step 510 whetheradvertising information is waiting to be received from any of databases114, 120, or 206. Advertising information may include an advertisementand advertisement control information (and a substitute advertisement,if desired). If it is determined at step 510 that advertisinginformation is ready to be received, process 500 then receives andprocesses the advertising information at step 512. The receiving andprocessing of advertising information is further illustrated in FIGS.6-9 and discussed below. As is discussed in connection with FIGS. 6-9,the manner in which the advertising information is processed, displayed(if at all), and stored (if at all), may be a function of the programguide information and channel map information that has been received (ifat all) by process 500 at the time the advertising information isreceived. When the advertising information is received at a televisiondistribution facility 104 or a network node 202, instead of beingprocessed, the information may be stored in advertising database 120 or206, respectively. Once the information has been processed or stored atstep 512 or if it is determined at step 510 that no advertisinginformation is waiting to be received, process 500 then loops back toand repeats step 502. If desired, the steps of FIG. 5 may be performedconcurrently or in a different order.

[0059]FIG. 6 illustrates in more detail the receiving and processing ofadvertising information as performed in step 512 of FIG. 5. As shown,advertising information is received at step 602 as an advertisement andadvertisement control information (and a substitute advertisement, ifdesired). Then at step 604 it is determined using the advertisementcontrol information whether the received advertisement is associatedwith a television network. If it is determined at step 604 that theadvertisement is associated with a television network, it is thendetermined at step 606 whether the network is viewable by the audiencefor the advertisement. The audience for the advertisement may be viewersof a single piece of television viewer equipment 106, viewers of alltelevision viewer equipment 106 connected to a television distributionfacility 104, etc. An example of how step 606 may be performed isdiscussed below in connection with the illustration of FIG. 7. If it isdetermined at step 606 that the network is viewable by the audience, theadvertisement is displayed or stored at step 608, and then step 512 iscompleted.

[0060] If it is determined in step 604 that the received advertisementis not associated with a television network or in step 606 that thenetwork is not viewable by the audience, it is then determined at step612 using the advertisement control information whether the receivedadvertisement is associated with a television channel. If it isdetermined at step 612 that the advertisement is associated with atelevision channel, it is determined at step 614 whether the channel isviewable by the audience for the advertisement. An example of how step614 may be performed is discussed below in connection with theillustration of FIG. 8. If it is determined at step 614 that the channelis viewable by the audience, the advertisement is displayed or stored atstep 608, and step 512 is completed.

[0061] If it is determined in step 612 that the received advertisementis not associated with a television channel or in step 614 that thechannel is not viewable by the audience, it is then determined at step616 using the advertisement control information whether the receivedadvertisement is associated with a television program. If it isdetermined at step 616 that the advertisement is associated with atelevision program, it is then determined at step 618 whether theprogram is viewable by the audience for the advertisement. An example ofhow step 618 may be performed is discussed below in connection with theillustration of FIG. 9. If it is determined at step 618 that the programis viewable by the audience, the advertisement is displayed or stored atstep 608, and step 512 is completed. Otherwise, if it is determined atstep 618 that the program is not viewable by the audience, a substituteadvertisement is selected and displayed at step 610, and then step 512is completed. The selection of a substitute advertisement may be made byselecting an advertisement transmitted with the primary advertisement,by selecting an advertisement designated by the advertisement controlinformation, by selecting a default advertisement, or by any othersuitable technique for selecting a substitute advertisement.

[0062] Finally, if at step 616 it is determined that the advertisementis not associated with a television program, then at step 620 it is onceagain determined if the advertisement is associated with a televisionnetwork or channel. If it is determined at step 620 that theadvertisement is associated with a television network or channel, then asubstitute advertisement is selected and displayed at step 610, and step512 is completed. Otherwise, if it is determined at step 620 that theadvertisement is not associated with a television network or channel,then the advertisement is displayed or stored at step 608, and step 512is completed.

[0063] Although a particular order of steps is illustrated in FIG. 6, itshould be apparent that the tasks performed in those steps could beperformed in different orders or concurrently, with appropriatemodification to the steps, without departing from the spirit and scopeof the present invention.

[0064] An example of a process by which it may be determined at step 606of FIG. 6 whether a network is viewable by an audience is illustrated inFIG. 7. As shown, at step 702, this process begins by determining if thenetwork is listed in a channel map stored in television viewer equipment106 performing the process of step 606. Two examples of channels mapsthat may be used in performing this step are shown in FIGS. 11 and 12and discussed below. In the event that channel map information is notavailable to the process of step 606, step 702, and steps 704 and 706which follow from step 702, need not be performed. If it is determinedat step 702 that the network is listed in the channel map, at step 704it is determined whether the network is available for viewing at thetime or time range associated with the advertisement. The determinationof step 704 may be a “yes” for every network listed in the channel map(e.g., for channel maps like that shown in FIG. 11) or for only thosenetworks listed in the channel map that are indicated as being availablefor viewing (e.g., for channel maps like that shown in FIG. 12), and maybe “no” for all other networks. If it is determined in step 704 that thenetwork is not available for viewing, step 606 is completed and returnsan indication that the network is not viewable.

[0065] Otherwise, if it is determined in step 704 that the network isavailable for viewing, it is determined at step 706 whether the networkhas been blocked out. A network may be blocked out by a parent wishingto screen his or her children from adult programming or by an automaticfeature of a censorship system such as the “V” chip. A network may beblocked out because the network or channel for the network has beenblocked or because a program on at the time or time range of theadvertisement has been blocked. For blocking of networks and channels,the determination of whether a network has been blocked out may be “no”for every network listed in the channel map (e.g., for channel maps likethat shown in FIG. 11) or for only those networks listed in the channelmap that are indicated as not being blocked out (e.g., for channel mapslike that shown in FIG. 12), and may be “yes” for all other networks.For blocked programs, the determination of whether a program is blockedmay be made from a blocked program list or flags in program guideinformation. If it is determined in step 706 that the network is blockedout, step 606 is completed and returns an indication that the network isnot viewable. Otherwise, if it is determined in step 706 that thenetwork is not blocked out, step 606 is completed and returns anindication that the network is viewable.

[0066] If it is determined at step 702 that the network is not listed inthe channel map, it is then determined at step 708 whether the networkis listed in program guide information in the device performing theprocess of step 606. If program guide information is not available tothe process of step 606, step 708, and steps 710 and 712 which followstep 708, may be skipped and step 606 may then complete and return adefault indication either that the network is viewable or not viewable,as desired. The determination of whether the network is listed in theprogram guide information may be made by searching the program guideinformation and returning a “yes” indication if the network is found inthe program guide information and a “no” indication if the network isnot found in the program guide information. If it is determined at step708 that the network is not listed in the program guide information,step 606 is completed and returns an indication that the network is notviewable. Otherwise, if it is determined at step 708 that the network islisted in the program guide information, it is determined at step 710whether the network is available for viewing at the time or time rangeassociated with the advertisement. This determination may be made bychecking flags associated with the network in the program guideinformation. If it is determined at step 710 that the network is notavailable for viewing, step 606 is completed and returns an indicationthat the network is not viewable. Otherwise, if it is determined at step710 that the network is available for viewing, it is determined at step712 whether the network has been blocked out. This determination may bemade by checking flags associated with the network in the program guideinformation, channel map, or a blocked-program list. If it is determinedat step 712 that the network is blocked out, step 606 is completed andreturns an indication that the network is not viewable. Otherwise, if itis determined at step 712 that the network is not blocked out, step 606is completed and returns an indication that the network is viewable.

[0067] An example of a process by which it may be determined at step 614of FIG. 6 whether a channel is viewable by an audience is illustrated inFIG. 8. As shown, at step 802, this process begins by determining if thechannel is listed in channel map information stored in television viewerequipment 106 performing the process of step 614. Two examples ofchannels maps that may be used in performing this step are shown inFIGS. 10 and 12 and are discussed below. In the event that channel mapinformation is not available to the process of step 614, step 802, andsteps 804 and 806 which follow from step 802, need not be performed. Ifit is determined at step 802 that the channel is listed in the channelmap information, it is then determined at step 804 whether the channelis available for viewing at the time or time range associated with theadvertisement. The determination of step 804 may be “yes” for everychannel listed in the channel map information or for only those channelslisted in the channel map information that are indicated as beingavailable for viewing (e.g., for channel maps like that shown in FIGS.10 and 12), and may be “no” for all other channels. If it is determinedin step 804 that the channel is not available for viewing, step 614 iscompleted and returns an indication that the channel is not viewable.

[0068] Otherwise, if it is determined in step 804 that the channel isavailable for viewing, it is then determined at step 806 whether thechannel has been blocked out. A channel may be blocked out by a parentwishing to screen his or her children from adult programming or by anautomatic feature of a censorship system such as the “V” chip. A channelmay be blocked out because the channel or the channel's network has beenblocked or because a program on at the time or time range of theadvertisement has been blocked. For blocking of networks and channels,the determination of whether a channel has been blocked out may be “no”for every channel listed in the channel map or for only those channelslisted in the channel map that are indicated as not being blocked out(e.g., for channel maps like that shown in FIGS. 10 and 12), and may be“yes” for all other channels. For blocked programs, the determination ofwhether a program is blocked may be made from a blocked program list orflags in program guide information. If it is determined in step 806 thatthe channel is blocked out, step 614 is completed and returns anindication that the channel is not viewable. Otherwise, if it isdetermined in step 806 that the channel is not blocked out, step 614 iscompleted and returns an indication that the channel is viewable.

[0069] If it is determined at step 802 that the channel is not listed inthe channel map, it is then determined at step 808 whether the channelis listed in program guide information in television viewer equipment106 performing the process of step 614. If program guide information isnot available to the process of step 614, step 808, and steps 810 and812 which follow step 808, may be skipped and step 614 may then completeand return a default indication either that the channel is viewable ornot viewable, as desired. The determination of whether the channel islisted in program guide information may be made be searching the programguide information and returning a “yes” indication if the channel isfound in the program guide information and a “no” indication if thechannel is not found in the program guide information. If it isdetermined at step 808 that the channel is not listed in the programguide information, step 614 is completed and returns an indication thatthe channel is not viewable. Otherwise, if it is determined at step 808that the channel is listed in the program guide information, it isdetermined at step 810 whether the channel is available for viewing atthe time or time range associated with the advertisement. Thisdetermination may be made by checking flags associated with the channelin the program guide information. If it is determined at step 810 thatthe channel is not available for viewing, step 614 is completed andreturns an indication that the channel is not viewable. Otherwise, if itis determined at step 810 that the channel is available for viewing, itis determined at step 812 whether the channel has been blocked out. Thisdetermination may be made by checking flags associated with the channelin the program guide information, channel map, or a blocked programlist. If it is determined at step 812 that the channel is blocked out,step 614 is completed and returns an indication that the channel is notviewable. Otherwise, if it is determined at step 812 that the channel isnot blocked out, step 614 is completed and returns an indication thatthe channel is viewable.

[0070] An example of a process by which step 618 of FIG. 6 may determinewhether a program is viewable by an audience is illustrated in FIG. 9.As shown, the process begins by determining at step 902 whether data forthe program should be present in program guide information stored intelevision viewer equipment 106 performing the process of step 618. Inthe event that program guide information is not available to the processof step 618, the process may skip steps 902, 904, 906, and 908, afterwhich step 616 may then be completed and return a default indicationthat the program is either viewable or not viewable, as desired. Thedetermination of whether information for a program should be in theprogram guide information may be made by checking to see if the programis going to air at a date and time for which other information isavailable, if the program is on a network or channel for which there isprogram guide information, or by any other suitable technique.

[0071] If it is determined in step 902 that information for the programshould not be in the program guide information, step 618 is completedand returns an indication that the program is viewable. Otherwise, if itis determined in step 902 that information for the program should be inthe program guide information, it is then determined at step 904 whetherinformation for this program actually is in the program guideinformation. This determination may be made by searching through theprogram guide information to determine if information corresponding tothe program is present. If it is determined at step 904 that informationfor the program is not present, step 618 completes and returns anindication that the program in not viewable. Otherwise, if it isdetermined at step 904 that information for the program is present, itis then determined at step 906 whether this program is on an availablechannel at the time or time range associated with the advertisement.This determination may be made by first determining from the programguide information the channel on which the program is to air, and thenby checking flags associated with that channel in the program guideinformation. If it is determined at step 906 that the program is not onan available channel, step 618 is completed and returns an indicationthat the program is not viewable. Otherwise, if it is determined at step906 that the program is on an available channel, it is determined atstep 908 whether the channel has been blocked out. A program may beblocked out because the channel or channel's network on which it is tobe aired has been blocked or because the program has been blocked. Thisdetermination may be made by checking flags associated with the channelin the program guide information, the channel map, or a blocked-programlist. If it is determined at step 908 that the channel has been blockedout, step 618 is completed and returns an indication that the program isnot viewable. Otherwise, if it is determined at step 908 that thechannel has not been blocked out, step 618 is completed and returns anindication that the program is viewable.

[0072] FIGS. 10-12 illustrate examples of channel maps that may be usedwith the present invention. As shown in FIG. 10, channel map 1000includes six columns of information. In the channel number column 1002,a channel number is listed for each source of programming listed incolumn 1004. These channel numbers are used by a viewer as a familiarmechanism to select a particular source of programming. For example,when a viewer selects channel “2,” television viewer equipment 106presents to the viewer the programming provided by source ID(identification) number “1000,” which may be programming on a particularbroadcast frequency, digital channel, etc.

[0073] In the source ID column 1004, a source identification number islisted for each source of programming that may be received usingtelevision viewer equipment 106. The number assigned to each source ofprogramming listed in source ID column 1004 may be any number, ispreferably unique for each source of programming, and preferably enablesthe device using channel map 1000 to receive the programming provided bythe source corresponding to that number.

[0074] In the available column 1006, a boolean flag is listed for eachsource of programming. Each flag may indicate whether a particularviewer is capable of receiving the programming from the correspondingsource. This capability of the viewer may be based upon whether theviewer has paid for the programming (if desired; however, it ispreferred to display advertisements regardless of whether programs havebeen paid for by the viewer), whether the programming is offered in theviewer's area, whether the programming is blacked out in the viewer'sarea (e.g., as is frequently done with sporting events), etc.

[0075] In the blocked out column 1008, a boolean flag is listed for eachsource of programming. Each flag may indicate whether a particularviewer has indicated that a source of programming is undesirable, andtherefore should not be viewable, or an automatic censoring system suchas the “V” chip has designated the source of programming as to becensored. Even though a source of programming may be blocked out,advertisements for that programming are preferably presented to inducethe viewers to view the programming. However, the advertisements may beblocked also, if desired.

[0076] In the start time column 1010 and the end time column 1012 arestart and end times for the time periods during which each channelnumber is associated with a particular source identification number. Forexample, channel number 6 is associated with source identificationnumber 1050 from 12 a.m. (0000) through 12 p.m. (1200) and with sourceidentification number 1075 from 12 p.m. (1200) through 12 a.m. (2400).

[0077] As shown in FIG. 11, channel map 1100 includes four columns ofdata, a source ID column 1102, a network ID column 1104, a start timecolumn 1106, and an end time column 1108. Source ID column 1102 lists asource identification number for each source of programming that may bereceived using television viewer equipment 106. These sourceidentification numbers may be substantially the same as those listed incolumn 1004 of channel map 1000 of FIG. 10. In network ID column 1104,network identification numbers are listed for each source ofprogramming. Each network identification number may be any number and ispreferably unique for each network. Since not all sources of programmingare associated with a network, some or all of these networkidentification numbers may correspond to “no network” (e.g., as shown,the network number “2000” appears for each of sources “1015” and “1018”to indicate that they are not associated with a network). Also, two ormore of the sources of programming may be associated with the samenetwork (e.g., as shown, network number “2001” appears for each ofsources “1000” and “1075”). In start time column 1106 and end timecolumn 1108, start and end times are listed for the association of eachnetwork listed in column 1104 and the corresponding source in column1102.

[0078] As shown in FIG. 12, a channel map 1200 may also be used which isa combination of channel maps 1000 and 1100. Channel map 1200incorporates a channel number column 1202, a source ID column 1204, anetwork ID column 1206, an available column 1208, a block-out column1210, a start time column 1212, and an end time column 1214. Each ofcolumns 1202, 1204, 1206, 1208, and 1210, and the data each contain, maybe substantially the same as that in columns 1002, 1004, 1104, 1006, and1008, respectively, of maps 1000 and 1100. Columns 1212 and 1214represent the start and end times during which each channel isassociated with a source of programming and the network indicated isaffiliated with that source of programming.

[0079] Although, the channel maps of FIGS. 10-12 are shown withparticular columns of data, other types of data could be used in thechannel maps, and the channel maps could be split up or consolidated, asnecessary, in accordance with the present invention.

[0080] As mentioned above, the displaying of advertisements fortelevision networks, channels, and programs in the present invention maybe accomplished by presenting full motion video, still images, graphics,text, and audio during standard commercial television time slots, onbarker television screens, in passive and interactive television programguides, using any other suitable techniques, or using a combination ofthese or other suitable techniques, if desired. FIGS. 13, 14, and 15illustrate examples of the steps that may be taken in presentingadvertisements in a few of these approaches in accordance with thepresent invention.

[0081]FIG. 13 shows an example 1300 of steps that may be performed insystem 100 of FIG. 1 in presenting an advertisement for a televisionchannel in a standard commercial television time slot in accordance withthe present invention. Starting at step 1302, an order for astandard-television-commercial-time-slot advertisement that isassociated with a television channel is received at an advertisementorder entry computer 111 in a main facility 102. A primary commercial, asubstitute commercial, and advertisement control information are thenretrieved from the advertising database 114 in main facility 102,packaged for transmission, and stored back in advertising database 114in main facility 102 at step 1304. During the packaging of step 1304,the primary and substitute commercials may be converted from theirnative format to another format, such as MPEG-2 (Moving Picture ExpertsGroup) format. Just prior to the time for the presentation of thecommercial, at step 1306, the packaged primary commercial, substitutecommercial, and advertisement control information are transmitted fromadvertising database 114 in main facility 102 to television viewerequipment 106. The transmission of step 1306 is performed using digitalchannels in communications link 108 and communications paths 110. Atstep 1308, the primary commercial, the substitute commercial, and theadvertisement control information are then received at television viewerequipment 106. Television viewer equipment 106 then determines at step1310 that the primary commercial is associated with a televisionchannel, and, from channel map information stored in television viewerequipment 106, that that television channel is available, but has beenblocked out. Finally, at step 1312, the substitute commercial isselected and presented by the interactive program guide.

[0082]FIG. 14 shows an example 1400 of steps that may be performed insystem 100 of FIG. 1 in presenting an advertisement for a pay-per-viewprogram in the form of a barker television screen in accordance with thepresent invention. Starting at step 1402, an order for a barker channelpromotion containing only text and graphics for a pay-pay-view programis received at an advertisement order entry computer 111 in a mainfacility 102. A primary promotion, a substitute promotion, andadvertisement control information are then retrieved from theadvertising database 114 in main facility 102, packaged fortransmission, and stored back in advertising database 114 in mainfacility 102 at step 1404. Just prior to the time for the presentationof the promotion, at step 1406, the packaged primary promotion,substitute promotion, and advertisement control information aretransmitted from advertising database 114 in main facility 102 totelevision viewer equipment 106. At step 1408, the primary promotion,the substitute promotion, and the advertisement control information arethen received at television viewer equipment 106. Television viewerequipment 106 then determines at step 1410 that the primary promotion isassociated with a pay-per-view program, and, from program guideinformation stored in television viewer equipment 106, that that programis available and has not been blocked out. Finally, at step 1412, theprimary promotion is presented.

[0083]FIG. 15 shows an example 1500 of steps that may be performed insystem 100 of FIG. 1 in presenting an advertisement for a televisionnetwork in an interactive television program guide in accordance withthe present invention. Starting at step 1502, an order for aninteractive program guide advertisement for a television network isreceived at an advertisement order entry computer 111 in a main facility102. A primary advertisement, a substitute advertisement, andadvertisement control information are then retrieved from theadvertising database 114 in main facility 102, packaged fortransmission, and stored back in advertising database 114 in mainfacility 102 at step 1504. Just prior to the time for the presentationof the advertisement, at step 1506, the packaged primary advertisement,substitute advertisement, and advertisement control information aretransmitted from advertising database 114 in main facility 102 totelevision viewer equipment 106. At step 1508, the primaryadvertisement, the substitute advertisement, and the advertisementcontrol information are then received at television viewer equipment106. An interactive program guide application in television viewerequipment 106 then determines at step 1510 that the primaryadvertisement is associated with a television network, and, from programguide information stored in television viewer equipment 106, that thatnetwork is unavailable. Finally, at step 1512, the substituteadvertisement is presented by the interactive program guide.

[0084] An example of a “grid” interactive program guide display screen1600 incorporating an advertisement 1604 is illustrated in FIG. 16. Asshown, screen 1600 may have a title 1602, an advertisement 1604, and aprogram grid 1606. Title 1602 may be any text or logo indicating asource of the guide information. Advertisement 1604 may include text,graphics, and any other visual presentation, and any or all of the text,graphics, or other visual presentation may be still or moving.Additionally, advertisement 1604 may also include an audio portion thatmay or may not be synchronized to the visual portion of the displayedpresentation. Although advertisement 1604 is shown as using a narrowstrip of screen 1600, advertisement 1604 could use any portion of screen1600 or could use the entire visible area of screen 1600 during aportion of the time the interactive program guide controlling screen1600 is active. Program grid 1606 may be of the channel-time-grid formatillustrated, or may be of any other format. In the channel-time-gridformat shown, one axis of the grid displayed lists channel numbers (inthis instance, the vertical axis), the other axis of the grid displayedlists times (in this instance, the horizontal axis), and the cellswithin the grid show program information. A user of screen 1600 may viewprogram information by scrolling through grid 1606 by pressing up anddown cursor keys on a remote control that controls set-top box 124 onwhich the program guide is implemented.

[0085] An example of a “navigator” interactive program guide displayscreen 1700 incorporating advertisements is illustrated in FIG. 17. Asshown, screen 1700 may have a title 1702, one or more advertisements1708 and 1710, and a navigator menu 1704. Title 1702 may be any text orlogo indicating the source of the guide information or the name of thenavigator feature of the interactive program guide display.Advertisements 1708 and 1710 may include text, graphics, and any othervisual presentation, and any or all of the text, graphics, or othervisual presentation may be still or moving. Additionally, advertisement1708 and 1710 may also include audio portions that may or may not besynchronized to the visual portions of the displayed presentations.Although advertisements 1708 and 1710 are shown as using two particularareas of screen 1700, advertisements 1708 and 1710 could use anyportions of screen 1700 or could use the entire visible area of screen1700 during a portion of the time the interactive program guidecontrolling screen 1700 is active. Navigator menu 1704 may permitnavigation through interactive program guide data by allowing a user toselect one of the options listed in menu 1704 using cursor 1706 and thenview the data based on the selected option. For example, the user couldselect “TIME” and then view all program guide data for programs on at asubsequently designated time. As another example, the user could select“TITLE” and then view all program guide data for programs correspondingto a subsequently designated title. As yet another example, the usercould select “CHANNEL” and then view all program guide data for programsbeing and to be aired on a subsequently designated channel.

[0086] An example of such a interactive program guide display screen isillustrated in FIG. 18. As shown, a “programs by channel” screen 1800may have a title 1802, one or more advertisements 1814 and 1816, and aprogram listing 1804. Title 1802 may be any text or logo indicating asource of the guide information or the name of the programs-by-channelfeature of the interactive program guide display. Advertisements 1814and 1816 may include text, graphics, and any other visual presentation,and any or all of the text, graphics, or other visual presentation maybe still or moving. Additionally, advertisements 1814 and 1816 may alsoinclude audio portions that may or may not be synchronized to the visualportions of the displayed presentations. Although advertisements 1814and 1816 are shown as using particular areas of screen 1800,advertisements 1814 and 1816 could use any portions of screen 1800 orcould use the entire visible area of screen 1800 during a portion of thetime the interactive program guide controlling screen 1800 is active.Program listing 1804 may present a list of programs on a designatedchannel over a given time period as shown. The designated channel may beindicated in channel name display 1806, the given time period may beindicated by time displays 1808, and the programs may be indicated byprogram names 1810. In preferred embodiments of screen 1800 furtherinformation on any selected program may be available by selecting theprogram using cursor 1812.

[0087] Other examples of presenting advertisements in interactivetelevision program guides are discussed in Knudson et al. U.S. patentapplication Ser. No. 09/034,939, filed Mar. 4, 1998, Knudson et al. U.S.patent application Ser. No. 09/070,604, filed Apr. 30, 1998, Knudson etal. U.S. patent application Ser. No. 09/070,555, filed Apr. 30, 1998,and Boylan, III et al. U.S. patent application Ser. No. 09/070,700,filed Apr. 30, 1998, which are hereby incorporated by reference hereinin their entireties.

[0088]FIG. 19 illustrates an example 1900 of steps that may be taken bysystem 100 of FIG. 1 in transmitting, receiving, processing, anddisplaying an advertisement associated with a television network inaccordance with the present invention. Starting at step 1902, anadvertisement and advertisement control information that are associatedwith a television network are retrieved in package form from advertisingdatabase 114 in main facility 102. The package advertisement andinformation are then transmitted to all television viewer equipment 106by way of communications link 108, television distribution facilities104, and communications paths 110 at step 1904. Next, at step 1906, theadvertisement and advertisement control information package is receivedat each piece of television viewer equipment 106. By running a processsuch as that shown in FIG. 7 and described above, each piece oftelevision viewer equipment 106 then determines at step 1908 whether anaffiliate of the network associated with the received advertisement isavailable on television viewer equipment 106 and has not been designatedas being undesirable. If it is determined at step 1908 that an affiliateof the network associated with the advertisement is available and hasnot been blocked out, then the advertisement is displayed at step 1910.Otherwise, step 1910 selects and displays a substitute advertisement.

[0089] The foregoing is merely illustrative of the principles of thisinvention and various modifications can be made by those skilled in theart without departing from the scope and spirit of the invention.

What is claimed is:
 1. A system for controlling the presentation of anadvertisement to a television viewer, comprising: an advertisingdatabase that stores said advertisement; and a processor that is aportion of one of a piece of television viewer equipment, a televisionset-top box, and a network node, and that receives from said advertisingdatabase said advertisement, that receives advertisement controlinformation associated with said advertisement, that determines whetherone of a network, a channel, and a program is associated with saidadvertisement, and if said one of said network, said channel, and saidprogram is associated with said advertisement, whether said one of saidnetwork, said channel, and said program is viewable by said televisionviewer, and that prevents presentation of said advertisement when saidone of said network, said channel, and said program is determined not tobe viewable by said television viewer.
 2. The system defined in claim 1further comprising a program guide database that stores program guideinformation, wherein said processor receives from said program guidedatabase said program guide information and uses said program guideinformation in determining whether said one of said network, saidchannel, and said program is viewable by said television viewer.
 3. Thesystem defined in claim 1 further comprising a channel map database thatstores channel map information, wherein said processor receives fromsaid channel map database said channel map information and uses saidchannel map information in determining whether said one of said network,said channel, and said program is viewable by said television viewer. 4.The system defined in claim 1 further comprising a substituteadvertisement that is received from said advertising database, whereinsaid processor selects said substitute advertisement to be presented tosaid television viewer when said one of said network, said channel, andsaid program is determined not to be viewable by said television viewer.5. The system defined in claim 1 wherein said processor determines thatsaid one of said network, said channel, and said program is determinednot to be viewable by said television viewer if said one of saidnetwork, said channel, and said program is unavailable to saidtelevision viewer.
 6. The system defined in claim 1 wherein saidprocessor determines that said one of said network, said channel, andsaid program is determined not to be viewable by said television viewerif said one of said network, said channel, and said program is undesiredby said television viewer.
 7. The system defined in claim 1 wherein saidprocessor determines that said one of said network, said channel, andsaid program is not viewable by said television viewer when said one ofsaid network, said channel, and said program should have correspondingprogram guide information and does not have said corresponding programguide information.
 8. The system defined in claim 1 wherein saidadvertising database is part of a television distribution facility. 9.The system defined in claim 1 wherein said advertising database is partof a main facility.
 10. A method for controlling the presentation of anadvertisement to a television viewer, comprising: storing saidadvertisement in an advertising database; and in a processor that is aportion of one of a piece of television viewer equipment, a televisionset-top box, and a network node, receiving said advertisement from saidadvertising database, receiving said advertisement control informationassociated with said advertisement, determining whether one of anetwork, a channel, and a program is associated with said advertisement,and if said one of said network, said channel, and said program isassociated with said advertisement, determining whether said one of saidnetwork, said channel, and said program is viewable by said televisionviewer, and preventing presentation of said advertisement when said oneof said network, said channel, and said program is determined not to beviewable by said television viewer.
 11. The method defined in claim 10further comprising storing in a program guide database program guideinformation, and, in said processor, receiving from said program guidedatabase said program guide information and using said program guideinformation in determining whether said one of said network, saidchannel, and said program is viewable by said television viewer.
 12. Themethod defined in claim 10 further comprising storing in a channel mapdatabase channel map information, and, in said processor, receiving fromsaid channel map database said channel map information and using saidchannel map information in determining whether said one of said network,said channel, and said program is viewable by said television viewer.13. The method defined in claim 10 further comprising selecting, in saidprocessor, a substitute advertisement to be presented to said televisionviewer when said one of said network, said channel, and said program isdetermined not to be viewable by said television viewer.
 14. The methoddefined in claim 10 wherein said processor determines that said one ofsaid network, said channel, and said program is determined not to beviewable by said television viewer if said one of said network, saidchannel, and said program is unavailable to said television viewer. 15.The method defined in claim 10 wherein said processor determines thatsaid one of said network, said channel, and said program is determinednot to be viewable by said television viewer if said one of saidnetwork, said channel, and said program is undesired by said televisionviewer.
 16. The method defined in claim 10 wherein said processordetermines that said one of said network, said channel, and said programis not viewable by said television viewer when said one of said network,said channel, and said program should have corresponding program guideinformation and does not have said corresponding program guideinformation.
 17. The method defined in claim 10 further comprisingimplementing said advertising database as a part of a televisiondistribution facility.
 18. The method defined in claim 10 furthercomprising implementing said advertising database as a part of a maindata storage and control facility.
 19. A system for presenting to atelevision viewer an advertisement that is associated with a televisionnetwork having a network identifier, said system comprising: anadvertising database that stores said advertisement; and a processorthat receives from said advertising database said advertisement, thatreceives advertisement control information that is associated with saidadvertisement and that contains said network identifier, that uses saidnetwork identifier to determine whether any affiliate of said network isviewable by said television viewer, and that prevents presentation ofsaid advertisement when no said affiliate is determined as beingviewable by said television viewer.
 20. The system of claim 19 whereinsaid processor further implements a program guide application thatprevents presentation of said advertisement when no said affiliate isdetermined as being viewable by said television viewer.
 21. A method forpresenting to a television viewer an advertisement that is associatedwith a television network having a network identifier, said methodcomprising: storing in an advertising database said advertisement; andin a processor, receiving from said advertising database saidadvertisement, receiving advertisement control information that isassociated with said advertisement and that contains said networkidentifier, using said network identifier to determine whether anyaffiliate of said network is viewable by said television viewer, andpreventing presentation of said advertisement when no said affiliate isdetermined as being viewable by said television viewer.
 22. The methodof claim 21 further comprising implementing in said processor a programguide application that prevents presentation of said advertisement whenno said affiliate is determined as being viewable by said televisionviewer.